home *** CD-ROM | disk | FTP | other *** search
/ Interactive Web Graphics with Shout 3D / Interactive Web Graphics With Shout 3D.iso / mac / Shout3Ddemo / S3D_2E1.exe / Shout3d_runtime / codebase / models / TimeSensorPauserTest.s3d < prev    next >
Text File  |  2000-05-30  |  3KB  |  119 lines

  1. #VRML V2.0 utf8
  2. WorldInfo {
  3.  title "Spazz3D"
  4.  info [
  5.   "This VRML World was created with Spazz3D, a VRML 97 authoring tool"
  6.   "www.spazz3d.com"
  7.  ]
  8. }
  9. DEF DUMMY Transform{
  10. children[
  11.     DEF dad_Box1 Transform {
  12.      translation -1.87176 0.86 0.0
  13.      rotation 0.865 0.503 0.0 0.684
  14.      children [
  15.       DEF BOX1_TOUCHSENSOR TouchSensor{}
  16.       DEF Box1 Shape {
  17.        appearance Appearance {
  18.         material DEF Red_mat Material {
  19.          diffuseColor 1.0 0.0 0.0
  20.         }
  21.        }
  22.        geometry DEF BOX_IFS IndexedFaceSet {
  23.         solid TRUE
  24.         creaseAngle 1.047
  25.         coord Coordinate {
  26.          point [
  27.           -0.50000 0.50000 -0.50000
  28.           -0.50000 0.50000 0.50000
  29.           0.50000 0.50000 0.50000
  30.           0.50000 0.50000 -0.50000
  31.           -0.50000 -0.50000 -0.50000
  32.           -0.50000 -0.50000 0.50000
  33.           0.50000 -0.50000 0.50000
  34.           0.50000 -0.50000 -0.50000
  35.          ]
  36.         }
  37.         coordIndex [
  38.           0 1 2 -1 
  39.           0 2 3 -1 
  40.           1 5 6 -1 
  41.           1 6 2 -1 
  42.           2 6 7 -1 
  43.           2 7 3 -1 
  44.           3 7 4 -1 
  45.           3 4 0 -1 
  46.           0 4 5 -1 
  47.           0 5 1 -1 
  48.           6 5 4 -1 
  49.           6 4 7 -1 
  50.         ]
  51.        }
  52.       }
  53.      ]
  54.     }
  55.     ]
  56. }
  57. Transform{
  58.      translation 0 0 0.0
  59. children  DEF START_TOUCHSENSOR TouchSensor {
  60.      children DEF BUTTON Shape {
  61.        appearance Appearance {
  62.         material Material {
  63.          diffuseColor 0 1.0 0.0
  64.         }
  65.        }
  66.        geometry USE BOX_IFS
  67.       }
  68.     }
  69. }
  70. Transform { 
  71.      translation 2.5 0 0.0
  72.     children DEF STOP_TOUCHSENSOR TouchSensor {
  73.      children USE BUTTON
  74.     }
  75. }
  76. Transform { 
  77.      translation 5 0 0.0
  78.     children DEF PAUSE_TOUCHSENSOR TouchSensor {
  79.      children USE BUTTON
  80.     }
  81. }
  82. Transform { 
  83.      translation 7.5 0 0.0
  84.     children DEF RESET_TOUCHSENSOR TouchSensor {
  85.      children USE BUTTON
  86.     }
  87. }
  88.     DEF Light1 DirectionalLight {
  89.      ambientIntensity 0.000
  90.      intensity 1.000
  91.      direction 0.99489 0.08952 0.04676
  92.      color 1.0 1.0 1.0
  93.      on FALSE
  94.     }
  95.  
  96. DEF ANIMATION TimeSensor{cycleInterval 1 loop TRUE}
  97. DEF INTERP PositionInterpolator {
  98. key [0 0.5 1]
  99. keyValue [ 0 0 0 0 1 0 0 0 0 ]
  100. }
  101.  
  102. ROUTE ANIMATION.fraction TO INTERP.fraction
  103. ROUTE INTERP.value TO DUMMY.translation
  104.  
  105. DEF TIME_SENSOR_PAUSER TimeSensorPauser{
  106.     timeSensor USE ANIMATION
  107. DEF TOGGLE Toggle{}
  108. DEF DOUBLE_TO_BOOLEAN DoubleEventToBoolean {}
  109.  
  110. # This will toggle the ANIMATION TimeSensor paused
  111. ROUTE PAUSE_TOUCHSENSOR.touchTime TO TOGGLE.toggleTime
  112. ROUTE TOGGLE.toggleValue TO TIME_SENSOR_PAUSER.setPaused
  113. ROUTE RESET_TOUCHSENSOR.touchTime TO DOUBLE_TO_BOOLEAN.doubleField 
  114. ROUTE DOUBLE_TO_BOOLEAN.booleanTrueField TO TIME_SENSOR_PAUSER.reset
  115.  
  116. ROUTE START_TOUCHSENSOR.touchTime TO ANIMATION.startTime
  117. ROUTE STOP_TOUCHSENSOR.touchTime TO ANIMATION.stopTime
  118.